home *** CD-ROM | disk | FTP | other *** search
Wrap
10 CLEAR ,,,,700,400*1024:DEF FONT"システム 12ドット":SCREEN 1,0,3,0:CLS:SCREEN 1,1,3,0:VIEW:CLS:SCREEN 1,0,3,0:PALETTE 20 PALETTE 2,[160,100,230]:PALETTE 3,[120,10,180]:PALETTE 4,[200,200,200]:PALETTE 5,[255,255,0]:PALETTE 6,[120,255,120] 30 DIM WI%(10,10),WS%(10,10),F_PAT(128),F_PAT1(128),F_PAT2(128),F_PAT3(128),F_PAT4(512),ICON(300),ALERT(18),CAUTION(18),SCR%(150000),SCR2%(150000),RETSND%(20000),ALTSND%(20000) 40 SND=0 'サウンドファイルかサウンドメッセージか 50 FOR I=1 TO 7 60 READ A:FTIME(I)=A:NEXT 70 DATA 17,212,267,382,6,1006,70 80 LOAD@"cursor2.dat",F_PAT4:COLOR 7,0:CLS 90 LOAD@"alert.DAT",ICON:GOSUB *ALERTICON 100 IF SND THEN LOAD@"RESULT.SND",RETSND% 110 IF SND THEN LOAD@"ALERT.SND",ALTSND% 120 FOR I=0 TO 128:F_PAT(I)=F_PAT4(I):NEXT 130 FOR I=129 TO 256:F_PAT1(I-129)=F_PAT4(I):NEXT 140 FOR I=257 TO 384:F_PAT2(I-257)=F_PAT4(I):NEXT 150 FOR I=385 TO 512:F_PAT3(I-385)=F_PAT4(I):NEXT 160 MOS=0:INIT=-1:GOSUB *MOUSEINIT:INIT=0 170 COLOR 0,%4:CLS:BT_BOLD=1 180 WIN_X=120:WIN_Y=40:WINSIZ_X=400:WINSIZ_Y=320:TITLE$="ベンチマーク":TITLE_X=6:GOSUB *WINDOWDRAW 190 FOR I=1 TO 7 200 READ COL,TITLE_COL,TITLE_X,TITLE$,BT_X,BT_Y,BTSIZ_X,BTSIZ_Y,BTWIN_X,BTWIN_Y:GOSUB *BUTTONDRAW 210 GOSUB *BUTTONDRAW 220 WS%(0,I)=BT_X 230 WS%(1,I)=BT_Y 240 WS%(2,I)=BTSIZ_X 250 WS%(3,I)=BTSIZ_Y 260 NEXT 270 WS%(0,8)=WIN_X+2 280 WS%(1,8)=WIN_Y+2 290 WS%(2,8)=11 300 WS%(3,8)=11 310 DATA 7,0,50,"ALL",150,60,150,20,30,20 320 DATA 7,0,50,"CPU",150,100,150,20,30,80 330 DATA 7,0,35,"グラフィック",150,140,150,20,30,120 340 DATA 7,0,45,"テキスト",150,180,150,20,30,160 350 DATA 7,0,35,"CDドライブ",150,220,150,20,30,200 360 DATA 7,0,30,"ハードディスク",150,260,150,20,30,240 370 DATA 7,0,35,"FDドライブ",150,300,150,20,30,280 380 MX=MOUSE(0):MY=MOUSE(1):WHILE MOUSE(2,0)=0:WEND 390 GOSUB *BTCHECK 400 IF SEL AND MOUSE(2,0)=0 THEN FLAG=0:GOTO 430 410 IF SEL AND MOUSE(2,0) THEN FLAG=0:BT=SEL:GOSUB *BTSELECT:GOTO 380 420 GOTO 380 430 IF SEL<>8 THEN GOSUB *BLINK:WAIT 30 440 ON SEL GOSUB *ALL,*CPU,*GRA,*TXT,*CD,*HD,*FD,*END 450 SEL=0:GOTO 380 460 *WINDOWDRAW:WINMAX_X=WIN_X+WINSIZ_X:WINMAX_Y=WIN_Y+WINSIZ_Y:TITLE_X=TITLE_X+WIN_X+20 470 GET@A(WIN_X,WIN_Y)-(WINMAX_X,WINMAX_Y+2),SCR% 480 LINE(WIN_X,WIN_Y)-(WINMAX_X,WINMAX_Y+2),PSET,0,BF 490 LINE(WIN_X+1,WIN_Y+1)-(WINMAX_X-2,WINMAX_Y),PSET,7,BF 500 LINE(WIN_X+1,WIN_Y+1)-(WINMAX_X-2,WIN_Y+16),PSET,0,BF 510 LINE(WIN_X+121,WIN_Y+1)-(WINMAX_X-2,WIN_Y+15),PSET,%2,BF 520 LINE(WIN_X+2,WIN_Y+2)-(WIN_X+13,WIN_Y+2),PSET,7 530 LINE(WIN_X+2,WIN_Y+2)-(WIN_X+2,WIN_Y+13),PSET,7 540 LINE(WIN_X+2,WIN_Y+4)-(WIN_X+13,WIN_Y+4),PSET,7,,&HAAAA 550 LINE(WIN_X+2,WIN_Y+6)-(WIN_X+13,WIN_Y+6),PSET,7,,&HAAAA 560 LINE(WIN_X+2,WIN_Y+8)-(WIN_X+13,WIN_Y+8),PSET,7,,&HAAAA 570 LINE(WIN_X+2,WIN_Y+10)-(WIN_X+13,WIN_Y+10),PSET,7,,&HAAAA 580 LINE(WIN_X+2,WIN_Y+12)-(WIN_X+13,WIN_Y+12),PSET,7,,&HAAAA 590 SYMBOL(TITLE_X,WIN_Y+2),TITLE$,.75!,.75!,7 600 RETURN 610 *BUTTONDRAW:BTMAX_X=BT_X+BTSIZ_X:BTMAX_Y=BT_Y+BTSIZ_Y 620 IF BT_BOLD THEN LINE(BT_X-1,BT_Y-1)-(BTMAX_X+1,BTMAX_Y+1),PSET,0,B 630 LINE(BT_X,BT_Y)-(BTMAX_X,BTMAX_Y),PSET,%COL,BF 640 LINE(BT_X,BTMAX_Y-1)-(BTMAX_X,BTMAX_Y),PSET,0,BF 650 LINE(BTMAX_X-1,BTMAX_Y)-(BTMAX_X,BT_Y+2),PSET,0,BF 660 LINE(BT_X,BT_Y)-(BTMAX_X,BT_Y+1),PSET,7,BF 670 LINE(BT_X,BT_Y)-(BT_X+1,BTMAX_Y),PSET,7,BF 680 PSET(BTMAX_X,BT_Y+1),0 690 PSET(BT_X+1,BTMAX_Y),0 700 SYMBOL(BT_X+TITLE_X+2,BT_Y+5),TITLE$,.75!,.75!,TITLE_COL 710 BT_X(BT_NO)=BT_X:BT_Y(BT_NO)=BT_Y:BTSIZ_X(BT_NO)=BTMAX_X:BTSIZ_Y(BT_NO)=BTMAX_Y:RETURN 720 *BTCHECK 730 FOR K=1 TO 8 740 IF (MX=>WS%(0,K) AND MX=<WS%(0,K)+WS%(2,K)) AND (MY=>WS%(1,K) AND MY=<WS%(1,K)+WS%(3,K)) THEN SEL=K:RETURN 750 NEXT 760 SEL=0:RETURN 770 *BTSELECT 780 IF BTRET AND BTRET<>SEL THEN LINE(WS%(0,BTRET),WS%(1,BTRET))-(WS%(0,BTRET)+WS%(2,BTRET),WS%(1,BTRET)+WS%(3,BTRET)),XOR,7,BF 790 IF BTRET<>SEL THEN LINE(WS%(0,SEL),WS%(1,SEL))-(WS%(0,SEL)+WS%(2,SEL),WS%(1,SEL)+WS%(3,SEL)),XOR,7,BF 800 BTRET=SEL 810 RETURN 820 *ALL 830 SEL=2:GOSUB *ALLBLINK:GOSUB *CPU 840 SEL=3:GOSUB *ALLBLINK:GOSUB *GRA 850 SEL=4:GOSUB *ALLBLINK:GOSUB *TXT 860 LINE(WS%(0,1),WS%(1,1))-(WS%(0,1)+WS%(2,1),WS%(1,1)+WS%(3,1)),XOR,7,BF:RETURN 870 *CPU 880 FOR I=0 TO 8:RET(I)=0:NEXT 890 WIN_X=10:WIN_Y=10:WINSIZ_X=600:WINSIZ_Y=400:TITLE$="CPU":TITLE_X=25:GOSUB *WINDOWDRAW 900 RANDOMIZE TIME:DIM DAT(20000):FOR I=1 TO 390:DAT(I)=INT(RND*500):NEXT 910 MOS=1:GOSUB *MOUSEINIT 920 FOR Y=0 TO 383 \ 13:FOR X=0 TO 13:DAT$=RIGHT$(" "+STR$(DAT(Y*13+X)),3)+" ":SYMBOL(WIN_X+X*36+46,WIN_Y+20+Y*12),DAT$,.75!,.75!,0:NEXT:NEXT 930 N=390:M=N:SYMBOL(WINMAX_X-200,WIN_Y+2),"ソート中です",.75!,.75!,1:TIME$="00:00:00" 940 FOR CHECK=M/2 TO 1 STEP -1 950 GOSUB *GODOWN 960 NEXT 970 ' 980 WHILE M>1 990 SWAP DAT(M),DAT(1) 1000 M=M-1 1010 ' 1020 CHECK=1:GOSUB *GODOWN 1030 WEND 1040 ' 1050 GOTO 1190 1060 *GODOWN 1070 I=CHECK 1080 J=I*2:F_END=0 1090 WHILE J<=M AND F_END=0 1100 IF J<M THEN IF DAT(J)<DAT(J+1) THEN J=J+1 1110 IF DAT(I)>DAT(J) THEN 1120 F_END=1 1130 ELSE 1140 SWAP DAT(I),DAT(J) 1150 I=J:J=I*2 1160 ENDIF 1170 WEND 1180 RETURN 1190 LINE(WINMAX_X-200,WIN_Y+2)-(WINMAX_X-2,WIN_Y+13),PSET,%2,BF 1200 LINE(WIN_X+40,WIN_Y+20)-(WINMAX_X-2,WINMAX_Y-2),PSET,7,BF 1210 FOR Y=0 TO 383 \ 13:FOR X=0 TO 13:DAT$=RIGHT$(" "+STR$(DAT(Y*13+X)),3)+" ":SYMBOL(WIN_X+X*36+46,WIN_Y+20+Y*12),DAT$,.75!,.75!,0:NEXT:NEXT 1220 MOS=0:GOSUB *MOUSEINIT 1230 TS=VAL(RIGHT$(TIME$,2)):TM=VAL(MID$(TIME$,4,2)):SYMBOL(WINMAX_X-200,WIN_Y+2),"ソートは無事終了しました",.75!,.75!,1:WAIT 100 1240 PUT@A(WIN_X,WIN_Y)-(WINMAX_X,WINMAX_Y+2),SCR%:ERASE DAT 1250 LINE(WS%(0,SEL),WS%(1,SEL))-(WS%(0,SEL)+WS%(2,SEL),WS%(1,SEL)+WS%(3,SEL)),XOR,7,BF 1260 BTRET=0:SEL=0:RET(SEL)=TS:RETTYPE(SEL)=1:GOSUB *HANTEI 1270 RETURN 1280 *GRA 1290 SCREEN 1,0,3,0:GET@A(0,0)-(640,480),SCR% 1300 WIN_X=300:WIN_Y=150:WINSIZ_X=300:WINSIZ_Y=250:TITLE$="グラフィック":TITLE_X=10:GOSUB *WINDOWDRAW 1310 LINE (302,168)-(597,399),PSET,0,BF 1320 SYMBOL(WINMAX_X-120,WIN_Y+2),"テスト中です",.75!,.75!,1 1330 MOS=1:GOSUB *MOUSEINIT 1340 SCREEN 1,1,3,0:VIEW (302,168)-(597,399),0,7 1350 SCREEN 1,0,3,0:SYMBOL(WINMAX_X-80,WIN_Y+20),"Write Ovals",.75!,.75!,%2 1360 TIME$="00:00:00":SCREEN 1,1,3,0: 1370 WHILE TIME$<"00:00:03" 1380 CIRCLE(INT(RND*640),INT(RND*480)),INT(RND*100)+2,INT(RND*6)+1,RND,,,F 1390 O=O+1 1400 WEND 1410 MOS=0:GOSUB *MOUSEINIT 1420 LINE(0,0)-(640,480),PSET,0,BF:SCREEN 1,0,3,0:LINE(302,168)-(597,399),PSET,0,BF:RET(TS)=O:RETTYPE(SEL)=2:GOSUB *HANTEI 1430 MOS=1:GOSUB *MOUSEINIT 1440 SCREEN 1,0,3,0:SYMBOL(WINMAX_X-80,WIN_Y+20),"Write Lines",.75!,.75!,%2 1450 TIME$="00:00:00":SCREEN 1,1,3,0:PALETTE 1460 WHILE TIME$<"00:00:03" 1470 LINE(INT(RND*640),INT(RND*480))-(INT(RND*640),INT(RND*480)),PSET,INT(RND*6)+1 1480 L=L+1 1490 WEND 1500 MOS=0:GOSUB *MOUSEINIT 1510 LINE(0,0)-(640,480),PSET,0,BF:SCREEN 1,0,3,0:LINE(302,168)-(597,399),PSET,0,BF:RET(TS)=L:RETTYPE(SEL)=3:GOSUB *HANTEI 1520 MOS=1:GOSUB *MOUSEINIT 1530 SCREEN 1,0,3,0:SYMBOL(WINMAX_X-60,WIN_Y+20),"Box Fill",.75!,.75!,%2 1540 TIME$="00:00:00":SCREEN 1,1,3,0:PALETTE 1550 WHILE TIME$<"00:00:03" 1560 LINE(INT(RND*640),INT(RND*480))-(INT(RND*640),INT(RND*480)),PSET,INT(RND*6)+1,BF 1570 B=B+1 1580 WEND 1590 MOS=0:GOSUB *MOUSEINIT 1600 LINE(0,0)-(640,480),PSET,0,BF:SCREEN 1,0,3,0:LINE(302,168)-(597,399),PSET,0,BF:RET(TS)=B:RETTYPE(SEL)=4:GOSUB *HANTEI 1610 MOS=1:GOSUB *MOUSEINIT 1620 SCREEN 1,0,3,0:SYMBOL(WINMAX_X-80,WIN_Y+20),"Paint Screen",.75!,.75!,%2 1630 TIME$="00:00:00":SCREEN 1,1,3,0:PALETTE 1640 WHILE TIME$<"00:00:03" 1650 PAINT(320,240),INT(RND*6)+1 1660 P=P+1 1670 WEND 1680 MOS=0:GOSUB *MOUSEINIT 1690 LINE(0,0)-(640,480),PSET,0,BF:SCREEN 1,0,3,0:RET(TS)=P:RETTYPE(SEL)=5:GOSUB *HANTEI 1700 LINE(WINMAX_X-120,WIN_Y+2)-(WINMAX_X-1,WIN_Y+15),PSET,%2,BF 1710 SYMBOL(WINMAX_X-150,WIN_Y+2),"テストが終了しました",.75!,.75!,1 1720 RET(TS)=P+B+L+O:RETTYPE(SEL)=6:GOSUB *HANTEI 1730 WAIT 20 1740 SCREEN 1,1,3,0:VIEW (0,0)-(639,479),0,0:SCREEN 1,0,3,0 1750 PUT@A(WIN_X,WIN_Y)-(WINMAX_X,WINMAX_Y+2),SCR% 1760 LINE(WS%(0,SEL),WS%(1,SEL))-(WS%(0,SEL)+WS%(2,SEL),WS%(1,SEL)+WS%(3,SEL)),XOR,7,BF 1770 BTRET=0:SEL=0 1780 RETURN 1790 *TXT 1800 L=0:WAIT 50:GET@A(0,0)-(640,480),SCR% 1810 SCREEN 0:COLOR 7,0:CLS:WIDTH 0 1820 PR$="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789" 1830 TIME$="00:00:00" 1840 WHILE TIME$<"00:00:03" 1850 PRINT PR$; 1860 L=L+1 1870 WEND 1880 SCREEN 1,0,3,0:COLOR 0,%4:PUT@A(0,0)-(640,480),SCR%:INIT=-1:GOSUB *MOUSEINIT:INIT=0 1890 RET(TS)=L:RETTYPE(SEL)=7:GOSUB *HANTEI 1900 LINE(WS%(0,SEL),WS%(1,SEL))-(WS%(0,SEL)+WS%(2,SEL),WS%(1,SEL)+WS%(3,SEL)),XOR,7,BF 1910 BTRET=0:SEL=0 1920 RETURN 1930 *CD 1940 WIN_X=100:WIN_Y=170:WINSIZ_X=440:WINSIZ_Y=60:GOSUB *ALERT:ASK$="この機能は今のところ未サポートです":GOSUB *ASK 1945 'IF RET=0 THEN 1950 1946 'WIN_X=300:WIN_Y=150:WINSIZ_X=300:WINSIZ_Y=250:TITLE$="グラフィック":TITLE_X=10:GOSUB *WINDOWDRAW 1947 'LINE (302,168)-(597,399),PSET,0,BF 1948 'SYMBOL(WINMAX_X-120,WIN_Y+2),"テスト中です",.75!,.75!,1 1949 'LOAD@"cdtest#1.tif",(302,168) 1950 LINE(WS%(0,SEL),WS%(1,SEL))-(WS%(0,SEL)+WS%(2,SEL),WS%(1,SEL)+WS%(3,SEL)),XOR,7,BF 1960 BTRET=0:SEL=0 1970 RETURN 1980 *HD 1982 WIN_X=100:WIN_Y=170:WINSIZ_X=440:WINSIZ_Y=60:GOSUB *ALERT:ASK$="この機能は今のところ未サポートです":GOSUB *ASK 1985 LINE(WS%(0,SEL),WS%(1,SEL))-(WS%(0,SEL)+WS%(2,SEL),WS%(1,SEL)+WS%(3,SEL)),XOR,7,BF 1990 BTRET=0:SEL=0:RETURN 2000 *FD 2002 WIN_X=100:WIN_Y=170:WINSIZ_X=440:WINSIZ_Y=60:GOSUB *ALERT:ASK$="この機能は今のところ未サポートです":GOSUB *ASK 2005 LINE(WS%(0,SEL),WS%(1,SEL))-(WS%(0,SEL)+WS%(2,SEL),WS%(1,SEL)+WS%(3,SEL)),XOR,7,BF 2010 BTRET=0:SEL=0:RETURN 2020 *END 2030 MOUSE 5:CLS:WAIT 50:FOR I=31 TO 0 STEP -1:PALETTE 4,[I*8,I*8,I*8],1:NEXT:COLOR 7,0:SCREEN 0:CLS:END 2040 *BLINK 2050 FOR L=0 TO 5:LINE(WS%(0,SEL),WS%(1,SEL))-(WS%(0,SEL)+WS%(2,SEL),WS%(1,SEL)+WS%(3,SEL)),XOR,7,BF:WAIT 5:NEXT:RETURN 2060 *HANTEI 2070 GET@A(0,0)-(640,480),SCR2% 2080 IF RETTYPE(SEL)=1 THEN 2090 GOSUB *RESULTWINDOW 2100 SYMBOL(240,120),"種目:CPUベンチマーク",.75!,.75!,3 2110 SYMBOL(160,155),"所要時間:",.75!,.75!,3 2120 SYMBOL(230,145),AKCNV$(RIGHT$(STR$(TM),LEN(STR$(TM))-1))+"′"+AKCNV$(RIGHT$(STR$(TS),LEN(STR$(TS))-1))+"″",1.5!,1.5!,7,,,5 2130 SYMBOL(160,170),"パフォーマンス度(初代比):",.75!,.75!,3,,,8 2140 SYMBOL(360,160),AKCNV$(RIGHT$(STR$(INT(FTIME(1)/TS*100)),LEN(STR$(INT(FTIME(1)/TS*100)))-1))+"%",1.5!,1.5!,7,,,5 2150 IF INT(FTIME(1)/TS+.5!)=1 THEN SYMBOL(355,185),"(初代とほぼ同等)",.75!,.75!,7,,,5:GOTO 2170 2160 SYMBOL(350,185),"(初代比 約"+AKCNV$(RIGHT$(STR$(INT(FTIME(1)/TS+.5!)),LEN(STR$(INT(FTIME(1)/TS+.5!)))-1))+"倍)",.75!,.75!,7,,,5 2170 SYMBOL(160,220),"※注 MXの互換モードとの比です。だから、初代機で",.75!,.75!,3,,,1 2180 SYMBOL(200,235),"100%以下がでたらごめんね。",.75!,.75!,3,,,1 2190 SYMBOL(160,260),"よかったら誰か初代機での時間を教えてくれませんか?",.75!,.75!,3,,,1 2200 GOSUB *MOUSECLICK 2210 ELSE IF RETTYPE(SEL)=2 THEN 2220 GOSUB *RESULTWINDOW 2230 SYMBOL(220,120),"種目:グラフィックベンチマーク",.75!,.75!,3 2240 SYMBOL(160,155),"Write Ovals:",.75!,.75!,3 2250 SYMBOL(250,142),AKCNV$(RIGHT$(STR$(O),LEN(STR$(O))-1))+"点",1.5!,1.5!,7,,,5 2260 SYMBOL(160,175),"パフォーマンス度(初代比):",.75!,.75!,3,,,8 2270 SYMBOL(360,170),AKCNV$(RIGHT$(STR$(INT(O/FTIME(2)*100)),LEN(STR$(INT(O/FTIME(2)*100)))-1))+"%",1.5!,1.5!,7,,,5 2280 IF INT(O/FTIME(2)+.5!)=1 THEN SYMBOL(355,195),"(初代とほぼ同等)",.75!,.75!,7,,,5:GOTO 2300 2290 SYMBOL(350,195),"(初代比 約"+AKCNV$(RIGHT$(STR$(INT(O/FTIME(2)+.5!)),LEN(STR$(INT(O/FTIME(2)+.5!)))-1))+"倍)",.75!,.75!,7,,,5 2300 SYMBOL(160,220),"※注 MXの互換モードとの比です。だから、初代機で",.75!,.75!,3,,,1 2310 SYMBOL(200,235),"100%以下がでたらごめんね。",.75!,.75!,3,,,1 2320 SYMBOL(160,260),"よかったら誰か初代機での得点を教えてくれませんか?",.75!,.75!,3,,,1 2330 GOSUB *WAIT 2340 ELSE IF RETTYPE(SEL)=3 THEN 2350 GOSUB *RESULTWINDOW 2360 SYMBOL(220,120),"種目:グラフィックベンチマーク",.75!,.75!,3 2370 SYMBOL(160,155),"Write Lines:",.75!,.75!,3 2380 SYMBOL(250,142),AKCNV$(RIGHT$(STR$(L),LEN(STR$(L))-1))+"点",1.5!,1.5!,7,,,5 2390 SYMBOL(160,175),"パフォーマンス度(初代比):",.75!,.75!,3,,,8 2400 SYMBOL(360,170),AKCNV$(RIGHT$(STR$(INT(L/FTIME(3)*100)),LEN(STR$(INT(L/FTIME(3)*100)))-1))+"%",1.5!,1.5!,7,,,5 2410 IF INT(L/FTIME(3)+.5!)=1 THEN SYMBOL(355,195),"(初代とほぼ同等)",.75!,.75!,7,,,5:GOTO 2430 2420 SYMBOL(350,195),"(初代比 約"+AKCNV$(RIGHT$(STR$(INT(L/FTIME(3)+.5!)),LEN(STR$(INT(L/FTIME(3)+.5!)))-1))+"倍)",.75!,.75!,7,,,5 2430 SYMBOL(160,220),"※注 MXの互換モードとの比です。だから、初代機で",.75!,.75!,3,,,1 2440 SYMBOL(200,235),"100%以下がでたらごめんね。",.75!,.75!,3,,,1 2450 SYMBOL(160,260),"よかったら誰か初代機での得点を教えてくれませんか?",.75!,.75!,3,,,1 2460 GOSUB *WAIT 2470 ELSE IF RETTYPE(SEL)=4 THEN 2480 GOSUB *RESULTWINDOW 2490 SYMBOL(220,120),"種目:グラフィックベンチマーク",.75!,.75!,3 2500 SYMBOL(160,155),"Box Fill:",.75!,.75!,3 2510 SYMBOL(250,142),AKCNV$(RIGHT$(STR$(B),LEN(STR$(B))-1))+"点",1.5!,1.5!,7,,,5 2520 SYMBOL(160,175),"パフォーマンス度(初代比):",.75!,.75!,3,,,8 2530 SYMBOL(360,170),AKCNV$(RIGHT$(STR$(INT(B/FTIME(4)*100)),LEN(STR$(INT(B/FTIME(4)*100)))-1))+"%",1.5!,1.5!,7,,,5 2540 IF INT(B/FTIME(4)+.5!)=1 THEN SYMBOL(355,195),"(初代とほぼ同等)",.75!,.75!,7,,,5:GOTO 2560 2550 SYMBOL(350,195),"(初代比 約"+AKCNV$(RIGHT$(STR$(INT(B/FTIME(4)+.5!)),LEN(STR$(INT(B/FTIME(4)+.5!)))-1))+"倍)",.75!,.75!,7,,,5 2560 SYMBOL(160,220),"※注 MXの互換モードとの比です。だから、初代機で",.75!,.75!,3,,,1 2570 SYMBOL(200,235),"100%以下がでたらごめんね。",.75!,.75!,3,,,1 2580 SYMBOL(160,260),"よかったら誰か初代機での得点を教えてくれませんか?",.75!,.75!,3,,,1 2590 GOSUB *WAIT 2600 ELSE IF RETTYPE(SEL)=5 THEN 2610 GOSUB *RESULTWINDOW 2620 SYMBOL(220,120),"種目:グラフィックベンチマーク",.75!,.75!,3 2630 SYMBOL(160,155),"Paint Screen:",.75!,.75!,3 2640 SYMBOL(250,142),AKCNV$(RIGHT$(STR$(P),LEN(STR$(P))-1))+"点",1.5!,1.5!,7,,,5 2650 SYMBOL(160,175),"パフォーマンス度(初代比):",.75!,.75!,3,,,8 2660 SYMBOL(360,170),AKCNV$(RIGHT$(STR$(INT(P/FTIME(5)*100)),LEN(STR$(INT(P/FTIME(5)*100)))-1))+"%",1.5!,1.5!,7,,,5 2670 IF INT(P/FTIME(5)+.5!)=1 THEN SYMBOL(355,195),"(初代とほぼ同等)",.75!,.75!,7,,,5:GOTO 2690 2680 SYMBOL(350,195),"(初代比 約"+AKCNV$(RIGHT$(STR$(INT(P/FTIME(5)+.5!)),LEN(STR$(INT(P/FTIME(5)+.5!)))-1))+"倍)",.75!,.75!,7,,,5 2690 SYMBOL(160,220),"※注 MXの互換モードとの比です。だから、初代機で",.75!,.75!,3,,,1 2700 SYMBOL(200,235),"100%以下がでたらごめんね。",.75!,.75!,3,,,1 2710 SYMBOL(160,260),"よかったら誰か初代機での得点を教えてくれませんか?",.75!,.75!,3,,,1 2720 GOSUB *WAIT 2730 ELSE IF RETTYPE(SEL)=6 THEN 2740 GOSUB *RESULTWINDOW 2750 SYMBOL(220,120),"種目:グラフィックベンチマーク",.75!,.75!,3 2760 SYMBOL(160,155),"トータルポイント:",.75!,.75!,3 2770 SYMBOL(270,142),AKCNV$(RIGHT$(STR$(O+L+B+P),LEN(STR$(O+L+B+P))-1))+"点",1.5!,1.5!,7,,,5 2780 SYMBOL(160,175),"パフォーマンス度(初代比):",.75!,.75!,3,,,8 2790 SYMBOL(360,170),AKCNV$(RIGHT$(STR$(INT((O+L+B+P)/FTIME(6)*100)),LEN(STR$(INT((O+L+B+P)/FTIME(6)*100)))-1))+"%",1.5!,1.5!,7,,,5 2800 IF INT((O+L+B+P)/FTIME(6)+.5!)=1 THEN SYMBOL(355,195),"(初代とほぼ同等)",.75!,.75!,7,,,5:GOTO 2820 2810 SYMBOL(350,195),"(初代比 約"+AKCNV$(RIGHT$(STR$(INT((O+L+B+P)/FTIME(6)+.5!)),LEN(STR$(INT((O+L+B+P)/FTIME(6)+.5!)))-1))+"倍)",.75!,.75!,7,,,5 2820 SYMBOL(160,220),"※注 MXの互換モードとの比です。だから、初代機で",.75!,.75!,3,,,1 2830 SYMBOL(200,235),"100%以下がでたらごめんね。",.75!,.75!,3,,,1 2840 SYMBOL(160,260),"よかったら誰か初代機での得点を教えてくれませんか?",.75!,.75!,3,,,1 2850 GOSUB *MOUSECLICK 2860 ELSE IF RETTYPE(SEL)=7 THEN 2870 GOSUB *RESULTWINDOW 2880 SYMBOL(240,120),"種目:テキストベンチマーク",.75!,.75!,3 2890 SYMBOL(160,155),"ポイント:",.75!,.75!,3 2900 SYMBOL(270,142),AKCNV$(RIGHT$(STR$(L),LEN(STR$(L))-1))+"点",1.5!,1.5!,7,,,5 2910 SYMBOL(160,175),"パフォーマンス度(初代比):",.75!,.75!,3,,,8 2920 SYMBOL(360,170),AKCNV$(RIGHT$(STR$(INT(L/FTIME(7)*100)),LEN(STR$(INT(L/FTIME(7)*100)))-1))+"%",1.5!,1.5!,7,,,5 2930 IF INT(L/FTIME(7)+.5!)=1 THEN SYMBOL(355,195),"(初代とほぼ同等)",.75!,.75!,7,,,5:GOTO 2820 2940 SYMBOL(350,195),"(初代比 約"+AKCNV$(RIGHT$(STR$(INT(L/FTIME(7)+.5!)),LEN(STR$(INT(L/FTIME(7)+.5!)))-1))+"倍)",.75!,.75!,7,,,5 2950 SYMBOL(160,220),"※注 MXの互換モードとの比です。だから、初代機で",.75!,.75!,3,,,1 2960 SYMBOL(200,235),"100%以下がでたらごめんね。",.75!,.75!,3,,,1 2970 SYMBOL(160,260),"よかったら誰か初代機での得点を教えてくれませんか?",.75!,.75!,3,,,1 2980 GOSUB *MOUSECLICK 2990 ENDIF 3000 PUT@A(0,0)-(640,480),SCR2% 3010 RETURN 3020 *ALLBLINK 3030 FOR L=0 TO 6:LINE(WS%(0,SEL),WS%(1,SEL))-(WS%(0,SEL)+WS%(2,SEL),WS%(1,SEL)+WS%(3,SEL)),XOR,7,BF:WAIT 5:NEXT:RETURN 3040 *RESULTWINDOW 3050 IF SND THEN PCMPLAY RETSND%,127 ELSE SMSGPLAY 4 3060 LINE(150,100)-(500,300),PSET,0,BF,%1 3070 LINE(150,300)-(500,301),PSET,0,BF 3080 LINE(500,100)-(501,301),PSET,0,BF 3090 SYMBOL(290,112),"~RESULT~",.375!,.375!,%2 3100 RETURN 3110 *ALERT 3120 IF SND THEN PCMPLAY ALTSND%,127 ELSE SMSGPLAY 5 3130 WINMAX_X=WIN_X+WINSIZ_X:WINMAX_Y=WIN_Y+WINSIZ_Y 3140 GET@A(0,0)-(640,480),SCR%:LINE (WIN_X,WIN_Y)-(WINMAX_X+1,WINMAX_Y+1),PSET,0,BF 3150 LINE(WIN_X,WIN_Y)-(WINMAX_X,WINMAX_Y),PSET,0,BF,%7:RETURN 3160 *ASK 3170 PUT@(WIN_X+5,WIN_Y+10)-(WIN_X+5+23,WIN_Y+10+23),ALERT,,%6 3180 SYMBOL(WIN_X+40,WIN_Y+20),ASK$,.75!,.75!,%5 3190 SYMBOL(WINMAX_X-250,WINMAX_Y-14),"OK!…左クリック NG!…右クリック",.75!,.75!,0 3200 WHILE MOUSE(2,0)=0 AND MOUSE(2,1)=0:WEND 3210 IF MOUSE(2,0) THEN RET=1:GOTO 3240 3220 IF MOUSE(2,1) THEN RET=0:GOTO 3240 3230 GOTO 3210 3240 WHILE MOUSE(2,0) OR MOUSE(2,1):WEND:PUT@A(0,0)-(640,480),SCR%:RETURN 3250 *MOUSECLICK 3260 FLAG=-1:WHILE MOUSE(2,0)=0:PALETTE 0,[0,0,0],1 3270 IF FLAG=0 AND FLAG2=0 THEN LINE(160,280)-(490,299),PSET,%1,BF:FLAG2=-1 3280 IF FLAG AND FLAG2=0 THEN SYMBOL(220,280),"マウスを左クリックしてください。",.75!,.75!,3,,,8:FLAG2=-1 3290 IF I=30 THEN FLAG=NOT FLAG:FLAG2=0:I=0 3300 I=I+1:WEND 3310 WHILE MOUSE(2,0):WEND 3320 RETURN 3330 *WAIT 3340 FLAG=-1:WHILE I<=180:PALETTE 0,[0,0,0],1 3350 IF FLAG=0 AND FLAG2=0 THEN LINE(160,280)-(490,299),PSET,%1,BF:FLAG2=-1 3360 IF FLAG AND FLAG2=0 THEN SYMBOL(200,280),"しばらくお待ちください。先に進みます。",.75!,.75!,3,,,8:FLAG2=-1 3370 IF I MOD 30 = 0 THEN FLAG=NOT FLAG:FLAG2=0 3380 I=I+1:WEND 3390 I=0:RETURN 3400 *MOUSEINIT 3410 IF INIT THEN MOUSE 0,0 3420 IF MOS THEN MOUSE 6,0,F_PAT1,F_PAT 3430 IF MOS=0 THEN MOUSE 6,0,F_PAT3,F_PAT2 3440 IF INIT THEN MOUSE 1,320,240,1:RETURN ELSE MOUSE 1,,,1 3450 RETURN 3460 *ALERTICON 3470 FOR I=0 TO 18:ALERT(I)=ICON(I):NEXT 3480 FOR I=20 TO 38:CAUTION(I-20)=ICON(I):NEXT 3490 RETURN